#include<stdio.h>
//#include<assert.h>
//在一个字符串里搜搜索另一个字符串，并返回位置

// char *mystrstr(char *arr1,char *arr2)
// {
//     //需要一个以str1开始向后移动指针和两个进行移动比较的指针
//     //arr1、arr2表示两个字符串的首地址
//     char *begin = arr1;//把arr1的首地址给begin
//     char *s1=NULL;
//     char *s2=NULL;
//     if(*arr2=='\0')
//     {
//         return (arr1);
//     }
//     while(*begin)//数组一向后便利
//     {
//         s1=begin;
//         s2=arr2;
//         while(*arr1!='\0' && *arr2!='\0'  && *arr1==*arr2)
//         {
//             s1++;
//             s2++;
//         }
//         if(*s2=='\0')
//         {
//             return (begin);
//         }
//         begin++;
//     }
//     return (NULL);
// }

char *mystrstr(const char* str1, const char* str2 ) 
{ 
 //assert(str1); 
 //assert(str2); 
 
 char *cp = (char*)str1; 
 char *substr = (char *)str2; 
 char *s1 = NULL; 
 
 if(*str2 == '\0') 
 return NULL; 
 
 while(*cp) 
 { 
 s1 = cp; 
 substr = str2; 
 while(*s1 && *substr && (*s1 == *substr)) 
 { 
 s1++; 
 substr++;
  } 
 if(*substr == '\0') 
 return cp; 
 cp++; 
 } 
}
int main()
{
    char arr1[]="acccbd";
    char arr2[]="bd";
    char *target=mystrstr(arr1,arr2);
    if(target==NULL)
    {
        printf("没找到");
    }
    else
    {
        printf("%s",target);
    }

    return 0;
}